From 4ac7a6de2f93c93f17bb0443ff4b11d056cd14f2 Mon Sep 17 00:00:00 2001 From: "kfraser@localhost.localdomain" Date: Wed, 27 Sep 2006 17:49:22 +0100 Subject: [PATCH] [VMXASSIST] Cast to pointer type via long to avoid compile warnings/errors with latest gcc versions. Signed-off-by: Keir Fraser --- tools/firmware/vmxassist/vm86.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/firmware/vmxassist/vm86.c b/tools/firmware/vmxassist/vm86.c index fb22938e72..7581f3bfe5 100644 --- a/tools/firmware/vmxassist/vm86.c +++ b/tools/firmware/vmxassist/vm86.c @@ -68,7 +68,7 @@ guest_linear_to_real(uint32_t base) return base; if (!(oldctx.cr4 & CR4_PAE)) { - l1_mfn = ((uint32_t *)gcr3)[(base >> 22) & 0x3ff]; + l1_mfn = ((uint32_t *)(long)gcr3)[(base >> 22) & 0x3ff]; if (!(l1_mfn & PT_ENTRY_PRESENT)) panic("l2 entry not present\n"); @@ -79,19 +79,19 @@ guest_linear_to_real(uint32_t base) l1_mfn &= 0xfffff000; - l0_mfn = ((uint32_t *)l1_mfn)[(base >> 12) & 0x3ff]; + l0_mfn = ((uint32_t *)(long)l1_mfn)[(base >> 12) & 0x3ff]; if (!(l0_mfn & PT_ENTRY_PRESENT)) panic("l1 entry not present\n"); l0_mfn &= 0xfffff000; return l0_mfn + (base & 0xfff); } else { - l2_mfn = ((uint64_t *)gcr3)[(base >> 30) & 0x3]; + l2_mfn = ((uint64_t *)(long)gcr3)[(base >> 30) & 0x3]; if (!(l2_mfn & PT_ENTRY_PRESENT)) panic("l3 entry not present\n"); l2_mfn &= 0x3fffff000ULL; - l1_mfn = ((uint64_t *)l2_mfn)[(base >> 21) & 0x1ff]; + l1_mfn = ((uint64_t *)(long)l2_mfn)[(base >> 21) & 0x1ff]; if (!(l1_mfn & PT_ENTRY_PRESENT)) panic("l2 entry not present\n"); @@ -102,7 +102,7 @@ guest_linear_to_real(uint32_t base) l1_mfn &= 0x3fffff000ULL; - l0_mfn = ((uint64_t *)l1_mfn)[(base >> 12) & 0x1ff]; + l0_mfn = ((uint64_t *)(long)l1_mfn)[(base >> 12) & 0x1ff]; if (!(l0_mfn & PT_ENTRY_PRESENT)) panic("l1 entry not present\n"); l0_mfn &= 0x3fffff000ULL; -- 2.30.2